import axios from 'axios';
import router from '../router/index';

const service = axios.create({
  baseURL: process.env.API,
  timeout: 80000 // request timeout
});

// 1.添加请求拦截器
service.interceptors.request.use(
  config => {
    config.baseURL = 'https://cnodejs.org/';

    config.headers.common = {
      Accept: 'application/json',
      'Content-Type': 'application/json'
    };
    // 在发送请求之前做些什么（在请求头中加token）
    // let token = localStorage.getItem('token');
    // let headersObj = config.headers || {}
    // if (!headersObj.hasOwnProperty('Authorization') && token) {
    //   config.headers.Authorization = token;
    // }
    return config;
  },
  error => {
    // 对请求错误做些什么
    return Promise.reject(error);
  }
);

//3.添加响应拦截器
service.interceptors.response.use(
  function (response) {
    //没有权限
    if (response.data.code == 403) {
      router.push({
        path: '/'
      });
    }
    return response;
  },
  function (error) {
    // Message('网络错误请重试');
    // 对响应错误做点什么
    return Promise.reject(error);
  }
);

export default service;